#ifndef LOGINWINDOW_H
#define LOGINWINDOW_H

#include <QWidget>
#include <QMessageBox>
#include <QTcpSocket>
#include <QAbstractSocket> // 需要包含这个头文件来使用 SocketError

#include "selectwindow.h"
#include "createaccoutwindow.h"
#include "GlobalUserInformation.h"

// 使用前向声明，让编译更快
namespace Ui {
class loginWindow;
}

class loginWindow : public QWidget
{
    Q_OBJECT

public:
    explicit loginWindow(QWidget *parent = nullptr);
    ~loginWindow();

private slots:
    void on_LoginButton_clicked();
    void on_createAccountButton_clicked();
    void CreateAccountWindow_closed();

    // --- 和医生端一样，新增的槽函数 ---
    void onConnected();
    void onDisconnected();
    void displayError(QAbstractSocket::SocketError socketError);
    void onReadyRead();

private:
    Ui::loginWindow *ui;
    SelectWindow* selectWindowPtr;
    CreateAccoutWindow* createAccountWindowPtr;
    QTcpSocket *clientSocket;
};

#endif // LOGINWINDOW_H
